Representational state transfer (REST)-based data services can enable a client to perform a set of well-defined operations associated with a resource, e.g., publish a data entity, edit the data entity, etc. via a distributed hypermedia system, e.g., the World Wide Web (WWW). As such, the client can send multiple requests to a server, via hypertext transfer protocol (HTTP) messages, to enable the server to perform an operation.
RESTful web applications, for example, use “built-in” HTTP verbs for performing create, read, update, and delete (CRUD) operations, e.g., POST, GET, PUT/PATCH, DELETE, etc. on resource(s). However, other types of custom operations, e.g., appropriate for a particular data service, are not effectively represented and/or invoked via conventional REST-based data services. Instead, such custom operations are performed by a data service in response to the client posting a resource representation, which is associated with properties representing parameter(s) of the custom operation, to a resource for invoking the custom operation. Thus, such intermingling of data and operational representations is difficult to describe and invoke in a common way via a REST-based data service.
The above-described deficiencies of today's techniques are merely intended to provide an overview of some of the problems of conventional systems, and are not intended to be exhaustive. Other problems with conventional systems and corresponding benefits of the various non-limiting embodiments described herein may become further apparent upon review of the following description.